/**
 * 获取当前页面的高度，让iframe通过内容来调整高度
 * @returns
 */
function getDocumentHeight() {
    return $('body').height();
}


$(document).ready(function () {

    $('#startSearchDate').datetimepicker({
        language: "zh-CN",
        weekStart: 1,
        startView: 2,
        minView: 2,
        todayHighlight: true,
        bootcssVer: 3,
        forceParse: 0,
        format: "yyyy年mm月dd日"
    });

    $('#endSearchDate').datetimepicker({
        language: "zh-CN",
        weekStart: 1,
        startView: 2,
        minView: 2,
        todayHighlight: true,
        bootcssVer: 3,
        forceParse: 0,
        format: "yyyy年mm月dd日"
    });

    $('#startSearchDate').on("changeDate", function () {
        formatDate('startSearchDate', 'dtp_input1');
    });

    $('#endSearchDate').on("changeDate", function () {
        formatDate('endSearchDate', 'dtp_input2');
    });


    //健康档案统计信息
    initJKDACount();

    //查询按钮点击时间
    $('#searchBtn').click(searchBtnClickHandler);

    //健康信息详细信息显示
    initJKDAInfo(true);


    //上传状态下拉框选中事件
    $('#searchSCJG').change(searchSCJGChangeHandler);
})


/*
 * 上传状态下拉框选中事件
 */
function searchSCJGChangeHandler() {

}

/*
 * 健康档案详细信息显示
 */
function initJKDAInfo(isInit) {

    //机构编码
    var JGBM = $('#searchJGBM').val();

    //证件号码
    var ZJHM = $('#searchZJHM').val();

    var startDate = "";

    var endDate = "";

    var SCJG = "";

    var WDLX = "";

    //判断是否是初始化时间
    if (!isInit) {

        if ($('#dtp_input1').val() != null && $('#dtp_input1').val() != "") {
            //开始时间
            startDate = getYYYYMMDD_HHMISS($('#startSearchDate').datetimepicker('getDate'));
        }

        if ($('#dtp_input1').val() != null && $('#dtp_input2').val() != "") {

            //结束时间
            endDate = getYYYYMMDD_HHMISS($('#endSearchDate').datetimepicker('getDate'));
        }


        SCJG = $('#searchSCJG option:selected').val();

        if (SCJG == "0") {
            SCJG = "";
        }

        WDLX = $('#searchWDLX option:selected').val();
    }

    var urlParam = '../../IHEController/getJKDAZCJGInfo?WDLX=' + WDLX + '&JGBM=' + JGBM + '&ZJHM=' + ZJHM + '&startDate=' + startDate + '&endDate=' + endDate + '&SCJG=' + SCJG;

//	if(!isInit)
//	{
//		$('#jkdaxxxx').bootstrapTable('refresh', {url: urlParam});
//		return;
//	}

    var sk = $("#jkdaxxxx").bootstrapTable('destroy').bootstrapTable({
        url: urlParam,
        striped: true,                      //是否显示行间隔色
        cache: false,                       //是否使用缓存，默认为true，所以一般情况下需要设置一下这个属性（*）
        pagination: true,                   //是否显示分页（*）
        sidePagination: "server", 			//分页方式：client客户端分页，server服务端分页（*）
        pageSize: 25,
        pageList: [25, 50, 100, 500],
        sortable: false,                    //是否启用排序
        sortOrder: "asc",                   //排序方式
        //rowStyle:rowStyle,
        height: 'auto',
        queryParams: function (params) {
            //可自定义增加参数
            return {
                pageNumber: params.offset / params.limit + 1,
                pageSize: params.limit
            };
        },

        //传递参数（*）
        search: false,                       //是否显示表格搜索，此搜索是客户端搜索，不会进服务端，所以，个人感觉意义不大
        showFooter: false,
        strictSearch: true,
        showColumns: false,                  //是否显示所有的列
        showRefresh: false,                  //是否显示刷新按钮
        minimumCountColumns: 2,              //最少允许的列数
        clickToSelect: true,                 //是否启用点击选中行
        showToggle: false,                    //是否显示详细视图和列表视图的切换按钮
        cardView: false,                     //是否显示详细视图
        detailView: false,                   //是否显示父子表
        columns: [{
            field: 'ONAME',
            title: '医疗机构名称',
            align: 'center',
            halign: 'center',
            valign: 'middle',
        }, {
            field: 'IDENTITYID',
            title: '身份证号码',
            align: 'center',
            halign: 'center',
            valign: 'middle',
        }, {
            field: 'CREATETIME',
            title: '创建时间',
            align: 'center',
            halign: 'center',
            valign: 'middle',
        }, {
            field: 'YZJG',
            title: 'CDA格式验证',
            align: 'center',
            halign: 'center',
            valign: 'middle',
        }, {
            field: 'RESPONSESTATUS',
            title: '上传状态',
            align: 'center',
            halign: 'center',
            valign: 'middle',
        }, {
            field: 'operate',
            title: '操作',
            align: 'center',
            events: operateEvents,
            formatter: operateFormatter
        }
        ],
        onClickRow: function (row, element, field) {
            $('.info').removeClass('info');  //去除之前选中的行的，选中样式
            $(element).addClass('info');     //添加当前选中的 success样式用于区别
        },
        onLoadSuccess: function () { //加载成功时执行 

            $('#rowTable').height($("#jkdaxxxx").height() + 230);
            parent.setIframeHeight('frameContext');
        }
    });
}


/*
 * 操作按钮初始化
 */
function operateFormatter(value, row, index) {
    if (row.RESPONSESTATUS == "未上传") {
        return [
            '<button type="button" class="JKDAUpload btn btn-default  btn-sm" style="border:0px;background-color:transparent;"><i class="glyphicon glyphicon-arrow-up table-update-icon" style="">上传</i></button>'
        ].join('');

    } else {
        return [
            '<button type="button" class="JKDAShow btn btn-default  btn-sm" style="border:0px;background-color:transparent;"><i class="glyphicon glyphicon-search table-update-icon" style="">查看</i></button>'
        ].join('');
    }
}

/**
 * 操作按钮点击事件
 */
window.operateEvents = {
    'click .JKDAUpload': function (e, value, row, index) {

        //上传一份健康档案
        uploadCDA(row.ID);

    },
    'click .JKDAShow': function (e, value, row, index) {

        //显示一份CDA详细信息
        showCDA(row);
    }
};


/*
 * 显示一份CDA的详细信息
 */
function showCDA(row) {

    var index = parent.layer.load();
    var urlParam = '../../IHEController/getCDAInfoByID?lsh=' + row.ID;
    $.ajax({
        type: "GET",
        dataType: "json",
        url: urlParam,
        success: function (jsonData) {

            parent.layer.close(index);
            var contentStr = "<div class='icon_lists clear' style='height:100%; padding-left: 15px; padding-right: 15px; padding-top:10px; padding-bottom: 15px;'>" +
                "<div class='row'>" +
                "<div class='col-sm-12' style='padding-top:10px;'>" +
                "<label class='control-label col-sm-2' style='text-align:right;'>医疗机构代码：</label>" +
                "<label class=' control-label col-sm-4' style='text-align:left;'>" + jsonData.OID + "</label>" +

                "<label class='control-label col-sm-2' style='text-align:right;'>医疗机构名称：</label>" +
                "<label class='control-label col-sm-4' style='text-align:left;'>" + jsonData.ONAME + "</label>" +
                "</div>" +

                "<div class='col-sm-12' style='padding-top:10px;'>" +
                "<label class='control-label col-sm-2' style='text-align:right;'>证件号码：</label>" +
                "<label class=' control-label col-sm-4' style='text-align:left;'>" + jsonData.IDENTITYID + "</label>" +

                "<label class='control-label col-sm-2' style='text-align:right;'>患者姓名：</label>" +
                "<label class='control-label col-sm-4' style='text-align:left;'>" + jsonData.SOURCEPATIENTNAME + "</label>" +
                "</div>" +

                "<div class='col-sm-12' style='padding-top:10px;'>" +
                "<label class='control-label col-sm-2' style='text-align:right;'>创建时间：</label>" +
                "<label class=' control-label col-sm-4' style='text-align:left;'>" + jsonData.CREATETIME + "</label>" +

                "<label class='control-label col-sm-2' style='text-align:right;'>文档类型：</label>" +
                "<label class='control-label col-sm-4' style='text-align:left;'>" + jsonData.WDLX + "</label>" +
                "</div>" +

                "<div class='col-sm-12' style='padding-top:10px;'>" +
                "<label class='control-label col-sm-2' style='text-align:right;'>文档验证：</label>" +
                "<textarea class='col-sm-10' rows='9'>验证结果：" + jsonData.YZJG + ",验证结果说明：" + jsonData.YZJGSM + "</textarea>" +
                "</div>" +


                "<div class='col-sm-12' style='padding-top:10px;'>" +
                "<label class='control-label col-sm-2' style='text-align:right;'>文档上传：</label>" +
                "<textarea class='col-sm-10' rows='9'>上传结果：" + jsonData.RESPONSESTATUS + ",上传结果说明：" + jsonData.RESPONSEDETAIL + "</textarea>" +
                "</div>" +
                "</div>" +
                "</div>";


            //弹出层-信息页面
            parent.layer.open({
                type: 1,
                title: '健康档案信息',
                area: ['850px', '550px'],
                shadeClose: false, //点击遮罩关闭
                scrollbar: false,//禁止浏览器滚动
                maxmin: false,
                content: contentStr
            });
        }
    });


}

/*
 * 上传一份健康档案
 */
function uploadCDA(ID) {
    var contentStr = "";
    var index = parent.layer.load();

    var urlParam = '../../IHEController/uploadJKDA?ID=' + ID;
    $.ajax({
        type: "GET",
        dataType: "json",
        url: urlParam,
        success: function (jsonData) {

            parent.layer.close(index);

            if (jsonData != null) {
                if (jsonData.RS == 'FALSE') {
                    alertWin('上传一份CDA文档成功', 1);

                    //刷新健康档案详细信息
                    initJKDAInfo(false);
                } else {
                    alertWin('上传一份CDA文档失败，错误原因：' + jsonData.INFO, 2);

                }

            }

        }

    });
}


/**
 * 消息提示框
 * @param content显示内容
 * @param type 提示框类型 1.普通提示框 2.警告框
 */
function alertWin(content, type) {
    parent.layer.alert(content, {icon: type});
}

/*
 * 初始化健康档案统计信息
 */
function initJKDACount() {
    //机构编码
    var JGBM = "";

    //证件号码
    var ZJHM = "";

    var startDate = "";

    var endDate = "";

    var urlParam = '../../IHEController/getJKDAZCJGCount?JGBM=' + JGBM + '&ZJHM=' + ZJHM + '&startDate=' + startDate + '&endDate=' + endDate;
    $.ajax({
        type: "GET",
        dataType: "json",
        url: urlParam,
        success: function (jsonData) {
            if (jsonData != null) {
                $("#GR_CDA_ZSL").html(jsonData.ZSL);
                $("#GR_CDA_SCCG").html(jsonData.SCCG);
                $("#GR_CDA_SCSB").html(jsonData.SCSB);
                $("#GR_CDA_WSC").html(jsonData.WSC);
                $("#GR_CDA_YZSB").html(jsonData.YZSB);
                $("#GR_CDA_YZCG").html(jsonData.YZCG);
                $("#GR_CDA_SCSJ").html(jsonData.XCZXSJ);

                $("#GR_CDA_SJXX").html(jsonData.SJXX);

                $("#GR_CDA_SJWTJ").html(jsonData.SJWTIJ);

                $("#GR_CDA_SJSJ").html(jsonData.SJSJ);
            }

        }
    });
}


/*
 * 查询按钮点击事件
 */
function searchBtnClickHandler() {


    var titleName = "";

    //根据文档状态修改标题
    var text = $('#searchSCJG option:selected').text();

    titleName = text + "的健康档案详细信息";

    $('#CDA_TITLE').html(titleName);

    //刷新健康档案详细信息
    initJKDAInfo(false);
}

function formatDate(id_1, id_2) {
    var curSelectDate = $('#' + id_1).datetimepicker('getDate');
    var date = new Date(curSelectDate);
    var y = date.getFullYear();
    var m = date.getMonth() + 1;
    m = m < 10 ? '0' + m : m;
    var d = date.getDate();
    d = d < 10 ? ('0' + d) : d;
    var time = y + '年' + m + '月' + d + '日';
    $('#' + id_2).val(time);
}

function getYYYYMMDD_HHMISS(curSelectDate) {
    var date = new Date(curSelectDate);
    var y = date.getFullYear();
    var m = date.getMonth() + 1;
    m = m < 10 ? '0' + m : m;
    var d = date.getDate();
    d = d < 10 ? ('0' + d) : d;
    var time = y + '-' + m + '-' + d;

    return time;
}